package cloud.keveri.gateway.dto;

import cloud.keveri.gateway.dto.invoker.ServiceInvoker;
import lombok.Builder;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Map;

/**
 * <p>
 * 作者：沈自在
 **/
@Data
@Builder
public class ServiceDefinition implements Serializable {

    @Serial
    private static final long serialVersionUID = -8263365765897285189L;

    /**
     * 唯一的服务ID: serviceId:version
     */
    private String uniqueId;

    /**
     * 服务唯一id
     */
    private String serviceId;

    /**
     * 服务的版本号
     */
    private String version;

    /**
     * 协议
     */
    private String protocol;

    /**
     *
     */
    private String contextPath;

    /**
     *
     */
    private String patternPath;

    /**
     *
     */
    private boolean enable = true;

    /**
     * 服务列表信息：
     */
    private Map<String, ServiceInvoker> invokerMap;
}
